As techniques for generating desired gaits of a mobile robot, such as a bipedal mobile robot, one disclosed in, for example, Japanese Unexamined Patent Application Publication No. 2002-326173 (patent document 1) and one disclosed in PCT international publication WO/03/057427/A1 (patent document 2) have been proposed by the present applicant. According to the techniques disclosed in these documents, an instantaneous desired gait composed of an instantaneous value of a desired motion (instantaneous desired motion) of a robot and an instantaneous value of a desired floor reaction force (instantaneous desired floor reaction force) is sequentially created using a first dynamic model representing a relationship between a motion of the robot (the position and the posture of each part) and a floor reaction force such that a required dynamic balance condition (a condition, such as the one in which a translational force component of a floor reaction force reaches a desired value or a floor reaction force moment about a certain point takes a desired value) on the first dynamic model is satisfied. Then, the instantaneous desired gait is input to a second dynamic model wherein a part of the instantaneous desired motion (desired body position/posture, a desired moment about a desired ZMP, or the like) is corrected so as to generate a final instantaneous desired gait in a time series manner.
In this case, a model having high linearity is generally used as the first dynamic model. Creating instantaneous desired gaits by using a dynamic model with high linearity makes it possible to efficiently and promptly create gaits (gaits that allow stable motions of the robot to continue) that connect to or gradually approximate normal gaits, which are virtual cyclic gaits. As a result, instantaneous desired gaits of the robot can be sequentially generated in real time while performing actual motions of the actual robot.
However, a dynamic model with high linearity generally tends to exhibit relatively low dynamic accuracy in a variety of operations of a robot. In other words, the dynamics of the robot on the dynamic model is apt to produce errors with respect to the actual dynamics of the actual robot. For this reason, if the instantaneous desired gaits created using the first dynamic model are directly applied to the actual robot to operate the actual robot, then the dynamic balance condition guaranteed on the first dynamic model fails to be satisfied on the actual robot, frequently leading to unstable motions of the actual robot.
Hence, according to the techniques disclosed in the aforesaid patent documents 1 and 2, a part of an instantaneous desired gait created using the first dynamic model is further corrected using the second dynamic model. In this case, a model having higher dynamic accuracy than the first dynamic model is used as the second dynamic model. This makes it possible to generate gaits having higher dynamic accuracy (closer to the dynamics of the actual robot) than the gaits created using the first dynamic model.
Meanwhile, since the first dynamic model tends to exhibit low dynamic accuracy, as mentioned above, dynamic errors may be relatively large, depending on the type of gaits to be generated. More specifically, in a case where a gait is generated to make a robot perform a motion in which an inertial force not assumed (considered) in the first dynamic model is produced, the error frequently increases. For example, in a case where a 3-mass-point dynamic model having mass points, one each corresponding to the body and a portion near the distal portion of each leg of a bipedal mobile robot, respectively, or a 1-mass-point dynamic model having the mass point only in the body of a robot is used as the first dynamic model, if a motion in which especially the knee joint of each leg is bent is carried out relatively quickly, then the dynamic error will be relatively large because of an influence of a change in an inertial force involved in the motion. As a result, an instantaneous desired gait created using the first dynamic model sometimes becomes unduly inappropriate in securing continuous stability of the robot. In such a case, there has been a danger in that even if the instantaneous desired gait is corrected using the second dynamic model, the correction cannot be properly made, and the corrected instantaneous desired gait exhibits low stability allowance or diverges, failing to secure continued stability of the robot.
With the background described above, the present inventor has previously proposed, under Patent Application No. 2004-5029, a technique in which the position and the posture of a predetermined portion are corrected by geometric arithmetic processing without using a dynamic model when correcting the motion of an instantaneous desired gait created using the aforesaid first dynamic model (without using differential equations or integral equations representing relationships between motions and forces), thus improving dynamic accuracy between a motion and an instantaneous desired floor reaction force (reducing dynamic errors). According to this technique, for example, the body position and the body posture of an instantaneous desired gait created using the aforesaid first dynamic model are corrected by geometric arithmetic processing (arithmetic processing that does not use the value of an instantaneous desired floor reaction force or a time-series value thereof, and the differential values of body position/posture). This technique does not need dynamic arithmetic processing, thus making it possible to promptly and efficiently correct instantaneous desired motions.
Meanwhile, this technique is adapted to correct the motion of an instantaneous desired gait by geometric arithmetic processing to reduce a dynamic error each time an instantaneous desired gait is generated, so that there is a danger in that the posture of a corrected part (such as the body) frequently changes.
When correcting a body posture, in particular, if the body posture frequency changes, then an excessive moment is produced at a hip joint, because the body is generally heavy and the inertia is relatively large. As a result, excessive load may be applied to a hip joint actuator or the hip joint portion and the portion of a hip joint and a portion in the vicinity thereof may bend and vibrate, leading to loss of stability of a robot. Further, in the case of, for example, a biped mobile robot, an imaging device as a visual device is usually supported by its body, so that frequent changes in body posture cause the imaging device to shake, making it difficult for the imaging device to recognize its surrounding. In addition, frequent changes in body posture adversely affect the appearance.
In order to prevent changes in the body posture, it is conceivable to always maintain the body posture constant. In this case, the correction of an instantaneous desired motion for improving dynamic accuracy can be accomplished primarily by correcting the position of the body. In this case, however, depending on the motion mode of a robot or a frictional condition of a floor surface, a floor reaction force matching an inertial force to be generated by the motion (translational motion) at the position of the body after the correction may not be actually produced. And, in such a case, the corrected instantaneous desired motion will cause the robot to slip.
The present invention has been made in view of the background described above, and it is an object thereof to provide a gait generating device of a mobile robot that is capable of properly correcting, without using a dynamic model (without using a differential equation or an integral equation that represents a relationship between motions and forces), the motion of an instantaneous desired gait created using a dynamic model, while achieving both improved dynamic accuracy between the motion and a floor reaction force of an instantaneous desired gait and a minimized change in the posture of a predetermined part, such as the body, of a robot, thus making it possible to generate a gait that allows stable motions of the robot to be accomplished.